/** 
 * Copyright / Licence
 * <p>
 * You are free:
 * <li>to Share — to copy, distribute and transmit the work
 * <li>to Remix — to adapt the work
 * </p>
 * <p>
 * Under the following conditions:
 * <li>Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
 * <li>Noncommercial — You may not use this work for commercial purposes.
 * <li>Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
 * </p>
 * <p>
 * More information can be found here:
 * <br/>
 * http://creativecommons.org/licenses/by-nc-sa/3.0/
 * </p>
 * <p>
 * Please contact Manfred Weber [manfred.weber@gmail.com] if you require a commercial licence
 * </p>
 */
 package org.dschini.ui.maps.world {

	import flash.events.*;
	import flash.display.*;
	import org.dschini.data.ui.maps.*;
	import org.dschini.data.ui.maps.world.*;
	import org.dschini.data.ui.maps.world.oceania.*;
	import org.dschini.ui.maps.*;
	import org.dschini.ui.maps.world.*;
	import org.dschini.ui.maps.world.oceania.*;

	public class OceaniaMap extends Map
	{
		public var oceaniaMapCountryLines:MovieClip;
		
		public var tansaniaMap:TansaniaMap;
		public var fijiMap:FijiMap;
		public var loyaltyIslandsMap:LoyaltyIslandsMap;
		public var newZealandMap:NewZealandMap;
		public var solomonIslandsMap:SolomonIslandsMap;
		public var papuaNewGuineaMap:PapuaNewGuineaMap;
		public var westPapuaNewGuineaMap:WestPapuaNewGuineaMap;
		public var australiaMap:AustraliaMap;

		public function OceaniaMap():void
		{
			countries = [
				tansaniaMap,
				fijiMap,
				loyaltyIslandsMap,
				newZealandMap,
				solomonIslandsMap,
				papuaNewGuineaMap,
				westPapuaNewGuineaMap,
				australiaMap
			]
		}
		
		override public function set mouseEnabled( mouseEnabled:Boolean ):void
		{
			super.mouseEnabled = mouseEnabled;
			for(var i:int=0; i<countries.length; i++){
				Map(countries[i]).mouseEnabled = mouseEnabled;
			}
		}
		
		override public function set doubleClickEnabled( doubleClickEnabled:Boolean ):void
		{
			super.doubleClickEnabled = doubleClickEnabled;
			for(var i:int=0; i<countries.length; i++){
				Map(countries[i]).doubleClickEnabled = doubleClickEnabled;
			}
		}
		
		override public function set data( data:MapData ):void
		{
			_data = data;
			for(var i:int=0; i<countries.length; i++){
				countries[i].data = MapData(_data).countries[i];
			}
		}
		
		override public function render():void
		{
			oceaniaMapCountryLines.visible = data.countryLinesVisible ? true : false;
			if( data.countryLinesColorTransform ){
				oceaniaMapCountryLines.transform.colorTransform = data.countryLinesColorTransform;
			}
			for(var i:int=0; i<countries.length; i++){
				countries[i].render();
			}
		}
	}
}
